module.exports = {
  apps: [
    {
      name: "BDC-earlyImport-test", // 项目名称
      script: "./.output/server/index.mjs", // 启动脚本
      args: "start", // 传递给脚本的参数
      watch: true, // 开启监听文件变动重启
      exec_mode: "cluster", // 可以设置为 "fork" 或 "cluster"。"fork" 模式下只启动一个实例，而 "cluster" 模式下可以启动多个实例。
      instances: "2", // max表示最大的 应用启动实例个数，仅在 cluster 模式有效 默认为 fork
      max_memory_restart: "100M", // 當佔用的 memory 達到 100M, 就自動重啟
      // pm2 會根據此選項內的時間來判定程序是否有成功啟動
      // 格式可使用 number 或 string, number 的話， 3000 代表 3000 ms。 string 的話, 可使用 '1h' 代表一個小時, '5m' 代表五分鐘, '10s' 代表十秒
      min_uptime: "15s",
      listen_timeout: 15000, // 單位為 ms, 如果在該時間內 app 沒有聽 port 的話，強制重啟
      ignore_watch: [
        // 不用监听的文件
        "node_modules",
        "public",
        ".output/public",
        "logs",
      ],
      autorestart: true, // 默认为 true, 发生异常的情况下自动重启
      // max_restarts: 30, // 最大异常重启次数
      // restart_delay: 60, // 异常重启情况下，延时重启时间
      log_date_format: "YYYY-MM-DD HH:mm:ss",
      error_file: "./logs/app-err.log", // 错误日志文件
      out_file: "./logs/app-out.log",
      merge_logs: true, // 设置追加日志而不是新建日志
      // 环境变量配置
      // env：'', // 一个包含环境变量的对象，这些环境变量将在应用启动时被设置。
      env_dev: {
        WEB_NODE_ENV: "dev",
        PORT: 5022,
        HOST: "127.0.0.1",
      },
      env_test: {
        WEB_NODE_ENV: "test",
        PORT: 5022,
        HOST: "0.0.0.0",
      },
      env_prep: {
        WEB_NODE_ENV: "prep",
        PORT: 5022,
        HOST: "0.0.0.0",
      },
      env_prod: {
        WEB_NODE_ENV: "prod",
        PORT: 5022,
        HOST: "0.0.0.0",
      },
    },
  ],
};
